package main

import (
	"regexp"
	"fmt"
)

const name = `My email is xuhui@gmail.com
email is aww@de.org
email is 323@qq.com
email is ohbf@asd.com.cn`

func main() {
	// [a-zA-Z0-9] 字符 或者 数字
	// . 任何字符
	//+ 前面至少一个字符
	// \ .  转译 就是需要一个 .
	re := regexp.MustCompile(`([a-zA-Z0-9]+)@([a-zA-Z0-9]+)\.(.+)`)
	// 只匹配一个
	matchOne:= re.FindString(name)
	fmt.Println(matchOne)
	// 匹配所有
	matchAll := re.FindAllString(name, -1)
	fmt.Println(matchAll)

	// 子匹配  出来的数据更加详细 小括号之内()的匹配
	submatch := re.FindAllStringSubmatch(name, -1)
	for _,sub := range submatch{
		fmt.Println(sub)
	}
}
